To ensure high reliability and availability in communications networks, protection switching is often used. When implemented, protection switching typically provides a primary or “working” path for a network and a redundant or “protection” path for the network. Accordingly, each path may be monitored, and if a failure is detected on the working path, network traffic may be switched to the protection path. An example of protection switching may be Ethernet Linear Protection Switching (ELPS) as defined by the ITU G.8031 standard.
To ensure loop-free topology in communications networks, spanning tree protocol (STP) may be employed by a network. A basic function of STP is to prevent loops and ensuing broadcast radiation that occurs in the presence of loops. To prevent loops, STP may determine if multiple paths exist between two network elements and break one of the paths if a loop would otherwise exist.
Because protection switching operates on the principle of maintaining two paths between network elements, a protection path may be detected by STP as a loop if STP is enabled on the network element ports comprising the protected path. If protected paths are detected as a loop by STP, STP may break one of the paths, thus rendering protection switching inoperable. In addition, protection switching may switch between a working path and a protection path without notifying switching, bridging, and/or routing protocols of network elements of the protection switch. Accordingly, in the event of a protection switch, switching, bridging, and/or routing protocols may become unaware of which of the two paths (working or protection path) is to be used for forwarding data. Moreover, upon a protection switch, a network element's switching or routing entries may need to be flushed and repopulated to point to the newly active path, which may result in an undesirable amount of dropped traffic and unnecessary flooding of traffic resulting in oversubscription.
Another problem relating to the interoperability of bridged and/or routed networks and protection switching is that in a network, multicast topology (e.g., multicast groups, recipient list of multicast receivers, etc.) may be “learned” on the active path (e.g., the working path) of a protection switching group and multicast traffic is forwarded to the active link as identified by a multicast group entry stored on a network element. If the active were to become disabled, STP may recompute a new network topology to detect an alternate path to forward the traffic. For the duration of the new topology computation, the multicast traffic may either be flooded to all paths to ensure continuation of traffic to multicast receivers, or dropped until the multicast receivers are relearned using the new STP topology. All multicast group addresses from the path that became disabled may be flushed and a new recipient list of multicast group receivers may be learned on the new active path (e.g., the protection path). This behavior may be undesirable as it may lead to excessive flooding, oversubscription, and dropped traffic.